<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
<!-- whatsnew511.qdoc -->
  <title>What's New in Qt 5.11 | Qt 5.14</title>
  <link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
  <script type="text/javascript">
    document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
    // loading style sheet breaks anchors that were jumped to before
    // so force jumping to anchor again
    setTimeout(function() {
        var anchor = location.hash;
        // need to jump to different anchor first (e.g. none)
        location.hash = "#";
        setTimeout(function() {
            location.hash = anchor;
        }, 0);
    }, 0);
  </script>
</head>
<body>
<div class="header" id="qtdocheader">
  <div class="main">
    <div class="main-rounded">
      <div class="navigationbar">
        <table><tr>
<td ><a href="index.html">Qt 5.14</a></td><td >What's New in Qt 5.11</td></tr></table><table class="buildversion"><tr>
<td id="buildversion" width="100%" align="right">Qt 5.14.2 Reference Documentation</td>
        </tr></table>
      </div>
    </div>
<div class="content">
<div class="line">
<div class="content mainContent">
<div class="sidebar">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#new-features-in-qt-5-11">New Features in Qt 5.11</a></li>
<li class="level2"><a href="#qt-core-module">Qt Core Module</a></li>
<li class="level2"><a href="#qt-network-module">Qt Network Module</a></li>
<li class="level2"><a href="#qt-qml-module">Qt QML Module</a></li>
<li class="level2"><a href="#qt-quick-module">Qt Quick Module</a></li>
<li class="level2"><a href="#qt-quick-controls-2-module">Qt Quick Controls 2 Module</a></li>
<li class="level2"><a href="#qt-3d-module">Qt 3D Module</a></li>
<li class="level2"><a href="#qt-location-module">Qt Location Module</a></li>
<li class="level2"><a href="#qt-webengine-module">Qt WebEngine Module</a></li>
<li class="level2"><a href="#qdoc-documentation-generator">QDoc Documentation Generator</a></li>
<li class="level2"><a href="#qt-designer-tool">Qt Designer Tool</a></li>
<li class="level2"><a href="#qt-gui-module">Qt GUI Module</a></li>
<li class="level2"><a href="#qt-widgets-module">Qt Widgets Module</a></li>
<li class="level2"><a href="#qt-serial-bus-module">Qt Serial Bus Module</a></li>
<li class="level2"><a href="#qt-bluetooth-module">Qt Bluetooth Module</a></li>
<li class="level1"><a href="#new-modules">New Modules</a></li>
<li class="level1"><a href="#platform-changes">Platform Changes</a></li>
<li class="level1"><a href="#technology-preview-modules">Technology Preview Modules</a></li>
<li class="level1"><a href="#deprecated-modules">Deprecated Modules</a></li>
<li class="level1"><a href="#list-of-api-changes">List of API Changes</a></li>
<li class="level1"><a href="#additions-to-other-qt-5-releases">Additions to Other Qt 5 Releases</a></li>
</ul>
</div>
<div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">What's New in Qt 5.11</h1>
<span class="subtitle"></span>
<!-- $$$whatsnew511.html-description -->
<div class="descr"> <a name="details"></a>
<a name="new-features-in-qt-5-11"></a>
<h2 id="new-features-in-qt-5-11">New Features in Qt 5.11</h2>
<a name="qt-core-module"></a>
<h3 id="qt-core-module">Qt Core Module</h3>
<ul>
<li>Added <a href="../qtcore/qiodevice.html#OpenModeFlag-enum">QIODevice::NewOnly</a> and <a href="../qtcore/qiodevice.html#OpenModeFlag-enum">QIODevice::ExistingOnly</a> <code>OpenMode</code> flags. When used with <a href="../qtcore/qfile.html">QFile</a>, <code>NewOnly</code> instructs <code>open()</code> to (atomically) return <code>false</code> if the file to open exists. <code>ExistingOnly</code> instructs <code>open()</code> to (atomically) return <code>false</code> if the file does not exist.</li>
<li>QFloat16 now has two methods for bulk conversion between <code>float16</code> and <code>float</code>, using hardware SIMD acceleration if available at runtime.</li>
<li><a href="../qtcore/qvarlengtharray.html">QVarLengthArray</a> now has rvalue reference versions of prepend and insert, and can hold movable-only datatypes such as <code>std::unique_ptr</code>.</li>
<li><a href="../qtcore/qvector.html">QVector</a> now has rvalue reference versions of prepend and insert.</li>
<li><a href="../qtcore/quuid.html">QUuid</a> <code>toString()</code> and <code>toByteArray()</code> now take a parameter specifying the generated format.</li>
<li>Updated Unicode support in <a href="../qtcore/qstring.html">QString</a>, <a href="../qtcore/qchar.html">QChar</a>, and <a href="../qtcore/qtextboundaryfinder.html">QTextBoundaryFinder</a> to be compatible with Unicode 10.</li>
</ul>
<a name="qt-network-module"></a>
<h3 id="qt-network-module">Qt Network Module</h3>
<ul>
<li>ALPN (via Secure Transport) and thus HTTP/2 negotiation are now supported on iOS (starting from version 11).</li>
<li><a href="../qtnetwork/qnetworkrequest.html">QNetworkRequest</a> now has the <code>Http2DirectAttribute</code> to start a connection in HTTP/2 without first negotiating.</li>
</ul>
<a name="qt-qml-module"></a>
<h3 id="qt-qml-module">Qt QML Module</h3>
<ul>
<li>The compiler pipeline is rewritten. We now directly generate byte code from the AST, and store that as our intermediate representation.</li>
<li>Optimized handling of JS calls, bringing large improvements especially when calling small functions.</li>
<li>Newly written byte code interpreter brings significant performance improvements, at 80-90% of the JIT in Qt 5.10.</li>
<li><code>.qmlc</code> files are now fully platform-independent and store byte code instead of assembly.</li>
<li>New hotspot JIT that generates optimized assembly for byte code that gets repeatedly executed.</li>
<li><code>CONFIG += qtquickcompiler</code> now also works in the open source version, by embedding the generated byte code at compile time.</li>
</ul>
<a name="qt-quick-module"></a>
<h3 id="qt-quick-module">Qt Quick Module</h3>
<ul>
<li>Expanded support for loading compressed textures in Image element. Now supports both <code>.ktx</code> and <code>.pkm</code> container file formats.</li>
</ul>
<a name="qt-quick-controls-2-module"></a>
<h3 id="qt-quick-controls-2-module">Qt Quick Controls 2 Module</h3>
<ul>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-abstractbutton.html">AbstractButton</a><ul>
<li>Promoted the <a href="../qtquickcontrols/qml-qtquick-controls2-abstractbutton.html#autoRepeat-prop">autoRepeat</a> property from <a href="../qtquickcontrols/qml-qtquick-controls2-button.html">Button</a> to <code>AbstractButton</code>.</li>
<li>Added <a href="../qtquickcontrols/qml-qtquick-controls2-abstractbutton.html#autoRepeatDelay-prop">autoRepeatDelay</a> and <a href="../qtquickcontrols/qml-qtquick-controls2-abstractbutton.html#autoRepeatInterval-prop">autoRepeatInterval</a> properties.</li>
<li>Added <code>pressX</code> and <code>pressY</code> properties to expose the press point to QML.</li>
</ul>
</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-buttongroup.html">ButtonGroup</a><ul>
<li>Added a <code>checkState</code> property. It indicates the combined check state of the entire group.</li>
</ul>
</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-checkbox.html">CheckBox</a> and <a href="../qtquickcontrols/qml-qtquick-controls2-checkdelegate.html">CheckDelegate</a><ul>
<li>No longer force tristate to <code>true</code> when setting <code>checkState</code> to <code>Qt.PartiallyChecked</code>. This allows presenting a partially checked state without being interactively tri-state.</li>
<li>No longer consider partially checked as checked. This fixes check state cycling for a non-tri-state checkbox so that it goes from partially checked to fully checked state.</li>
<li>Made it possible to implement <code>nextCheckState()</code> in QML.</li>
</ul>
</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-scrollbar.html">ScrollBar</a> and <a href="../qtquickcontrols/qml-qtquick-controls2-scrollindicator.html">ScrollIndicator</a><ul>
<li>Added <code>minimumSize</code>, <code>visualSize</code>, and <code>visualPosition</code> properties.</li>
</ul>
</li>
<li><a href="../qtquickcontrols/qml-qtquick-controls2-spinbox.html">SpinBox</a><ul>
<li>Added a <code>displayText</code> property to allow styles to create a light binding to display the textual value instead of having to call the <code>textFromValue()</code> JS-function.</li>
</ul>
</li>
</ul>
<a name="qt-3d-module"></a>
<h3 id="qt-3d-module">Qt 3D Module</h3>
<ul>
<li>Scrub through animations with the <code>normalizedTime</code> property of QAbstractClipAnimator.</li>
<li>Issue arbitrary ray casts in world space or screen space.</li>
<li>Improved SIMD support.</li>
</ul>
<a name="qt-location-module"></a>
<h3 id="qt-location-module">Qt Location Module</h3>
<ul>
<li>New Qt.labs.location plugin containing experimental QML types.</li>
</ul>
<a name="qt-webengine-module"></a>
<h3 id="qt-webengine-module">Qt WebEngine Module</h3>
<ul>
<li>Updated to Chromium 65.</li>
<li>Embedded DevTools without using a port and separate browser.</li>
<li>Installable cookie filter.</li>
<li>Quota permissions.</li>
</ul>
<a name="qdoc-documentation-generator"></a>
<h3 id="qdoc-documentation-generator">QDoc Documentation Generator</h3>
<ul>
<li><a href="qdoc-module.html">QDoc</a> now uses libclang for parsing C/C++ code.</li>
</ul>
<a name="qt-designer-tool"></a>
<h3 id="qt-designer-tool">Qt Designer Tool</h3>
<ul>
<li>Added support for ID-based translations.</li>
</ul>
<a name="qt-gui-module"></a>
<h3 id="qt-gui-module">Qt GUI Module</h3>
<ul>
<li>On Windows Desktop, the accessibility support was updated and vastly improved. The implementation is now based on Microsoft UI Automation (it was formerly based on Microsoft Active Accessibility).</li>
<li>The widgets themes available on Windows Desktop were updated to better support High-DPI displays, including fixes for several rendering issues, providing improved appearance and functionality.</li>
<li>Linux Printing now supports more CUPS options with the advanced tab in QPrintPropertiesDialog, allowing many additional settings (amongst them arbitrary page ranges).</li>
<li>Updated the Unicode bidirectional text algorithm to be compliant with Unicode 10.</li>
</ul>
<a name="qt-widgets-module"></a>
<h3 id="qt-widgets-module">Qt Widgets Module</h3>
<ul>
<li>Added quick text selection by mouse to <a href="../qtwidgets/qlineedit.html">QLineEdit</a>.</li>
</ul>
<a name="qt-serial-bus-module"></a>
<h3 id="qt-serial-bus-module">Qt Serial Bus Module</h3>
<ul>
<li>Added J2534 Pass-Thru CAN plugin for communication between a computer and a vehicle.</li>
<li>Added description, serial number and channel to <a href="../qtserialbus/qcanbusdeviceinfo.html">QCanBusDeviceInfo</a>, as far as supported by the various plugins.</li>
<li>Introduced categorized logging to the CAN bus module which can be enabled by the <i>&quot;qt.canbus&quot;</i> and <i>&quot;qt.canbus.plugins.&lt;pluginname&gt;&quot;</i> filters.</li>
<li><a href="../qtserialbus/qcanbusframe.html#isValid">QCanBusFrame::isValid</a>() now checks for invalid CAN FD payload lengths. E.g&#x2e; 24 is a valid CAN FD payload length, but 28 is not.</li>
</ul>
<a name="qt-bluetooth-module"></a>
<h3 id="qt-bluetooth-module">Qt Bluetooth Module</h3>
<ul>
<li>Ported Bluetooth Low Energy Central role implementation to <a href="../qtbluetooth/qtbluetooth-attribution-bluez.html#bluez">BlueZ</a>'s DBus LE API (minimum version to enable is <a href="../qtbluetooth/qtbluetooth-attribution-bluez.html#bluez">BlueZ</a> 5.42).</li>
</ul>
<a name="new-modules"></a>
<h2 id="new-modules">New Modules</h2>
<p>No new modules were added in this version.</p>
<a name="platform-changes"></a>
<h2 id="platform-changes">Platform Changes</h2>
<ul>
<li>MSVC2013 support removed from the code base.</li>
<li>Qt WebEngine now requires MSVC 2017 on Windows.</li>
<li>QNX 6.6 no longer supported (note: QNX 7 remains fully supported).</li>
<li>macOS 10.10 no longer supported.</li>
<li>Improved Accessibility support on Win32 by adopting the Windows UI Automation framework.</li>
<li>XCB: Support for missing 'dead keys' such as dasia and diaeresis.</li>
<li>eglfs<ul>
<li>Added support for framebuffer formats other than XRGB8888 (RGB565, ARGB8888).</li>
<li>Added experimental screen cloning support (by scanning out the same framebuffer on multiple displays).</li>
<li>Added support for operating with DRM render nodes (/dev/dri/renderDnn) in a headless mode transparent to applications.</li>
<li>Added a makespec for Renesas R-Car M3.</li>
<li>Added experimental backend for compositing Qt content with other hardware layers via VSP2 on Renesas devices.</li>
</ul>
</li>
</ul>
<a name="technology-preview-modules"></a>
<h2 id="technology-preview-modules">Technology Preview Modules</h2>
<ul>
<li>Qt Remote Objects (TP3) - A module that allows you to easily share <a href="../qtcore/qobject.html">QObject</a> interfaces (Signals/Slots/Properties) between processes or devices.</li>
<li>Qt WebGL Streaming Plugin (TP2) - Stream applications to browsers over the network.</li>
</ul>
<a name="deprecated-modules"></a>
<h2 id="deprecated-modules">Deprecated Modules</h2>
<p>The following modules are part of the Qt 5.11 release, but are deprecated and considered for removal in subsequent releases of Qt:</p>
<ul>
<li>Qt Script</li>
<li>Qt Quick Controls 1</li>
</ul>
<a name="list-of-api-changes"></a>
<h2 id="list-of-api-changes">List of API Changes</h2>
<p>The pages below contain a list of API changes in Qt 5.11:</p>
<ul>
<li><a href="newclasses511.html">New Classes and Functions in Qt 5.11</a></li>
<li><a href="obsoleteclasses.html">Obsolete Classes</a></li>
</ul>
<a name="additions-to-other-qt-5-releases"></a>
<h2 id="additions-to-other-qt-5-releases">Additions to Other Qt 5 Releases</h2>
<ul>
<li><a href="whatsnew510.html">What's New in Qt 5.10</a></li>
<li><a href="whatsnew59.html">What's New in Qt 5.9</a></li>
<li><a href="whatsnew58.html">What's New in Qt 5.8</a></li>
<li><a href="whatsnew57.html">What's New in Qt 5.7</a></li>
<li><a href="whatsnew56.html">What's New in Qt 5.6</a></li>
<li><a href="whatsnew55.html">What's New in Qt 5.5</a></li>
<li><a href="whatsnew54.html">What's New in Qt 5.4</a></li>
<li><a href="whatsnew53.html">What's New in Qt 5.3</a></li>
<li><a href="whatsnew52.html">What's New in Qt 5.2</a></li>
<li><a href="whatsnew51.html">What's New in Qt 5.1</a></li>
<li><a href="whatsnew50.html">What's New in Qt 5.0</a></li>
</ul>
</div>
<!-- @@@whatsnew511.html -->
        </div>
       </div>
   </div>
   </div>
</div>
<div class="footer">
   <p>
   <acronym title="Copyright">&copy;</acronym> 2020 The Qt Company Ltd.
   Documentation contributions included herein are the copyrights of
   their respective owners.<br/>    The documentation provided herein is licensed under the terms of the    <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation    License version 1.3</a> as published by the Free Software Foundation.<br/>    Qt and respective logos are trademarks of The Qt Company Ltd.     in Finland and/or other countries worldwide. All other trademarks are property
   of their respective owners. </p>
</div>
</body>
</html>
